/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package imperio.eventos;

import imperio.population.Individuo;

/**
 *
 * @author Bernardo
 */
public abstract class Evento {

    
    private double tempo;
    private Individuo individuo;


    public Evento(Individuo individuo) {
        this.individuo = individuo;
    }
    public Evento() {

    }
    
    /**Método para obter individuo no qual o evento está associado.

     * @return  Individuo - Individuo no qual o evento está associado.   

     */

    public Individuo getIndividuo() {
        return individuo;
    }
    
    /**Método para obter tempo no qual o evento será executado.

     * @return  Double - Tempo do evento.   

     */

    public double getTempo() {
        return tempo;
    }
    
    /**Método para determinar tempo no qual o evento será executado.     

     */

    public void setTempo(double tempo) {
        this.tempo = tempo;
    }

      /**Método abstrato no qual os eventos irão implementar suas respectivas ações sobre a população.     

     */  
    public abstract void simularEvento();
}
